package com.thread.ThreadStop;
/*
线程的停止：
1、建议线程正常停止：利用循环次数，不建议死循环；
2、建议使用停止标志flag；
3、不要使用stop、destroy等过时的方法或者JDK不建议的方法；
程序骨架：
如下：
public class stop implements Runnable {//一、实现Runnable接口

    @Override//二、重写run()方法
    public void run() {

    }
    public static void main(String[] args) {//三、给出main方法

    }
}
 */
public class StopTest implements Runnable {//一、实现Runnable接口
    private boolean flag = true;//1、设置标识

    @Override//二、重写run()方法
    public void run() {
        int i = 0;    //2、书写线程体
        while (flag){
            System.out.println("线程刷新了——>"+i+++"次");
        }
    }
    //2.1设置一个公开的方法停止线程体


    public void isFlag() {
        this.flag = false;
    }

    public static void main(String[] args) {//三、给出main方法
        StopTest stop = new StopTest();
        new Thread(stop).start();
        for (int i = 0; i <= 100; i++) {
            System.out.println("main"+i);
            if(i==90){
                //3、调用isFlag()方法，停止标志——>停止线程
                stop.isFlag();
                System.out.println("线程该停止了");
            }
        }
    }
}


